import smtplib
import time
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import cout_holiday

def send_email():
    # 1. 邮件内容配置
    sender = "xxxxx@qq.com"  # 发件邮箱
    # receiver = "xxxxx@qq.com"  # 收件邮箱
    # 发送给多个人
    receivers = ["xxxxx@qq.com", "xxxxx@qq.com"]
        # , "xxxxx@qq.com"]
    password = "xxxxx"  # 邮箱授权码（非登录密码）

    # 创建邮件对象
    msg = MIMEMultipart()
    msg['From'] = sender
    # 将收件人列表转换为字符串
    msg['To'] = ", ".join(receivers)
    # msg['To'] = receiver
    msg['Subject'] = "每日亲情提醒 - " + time.strftime("%Y-%m-%d")

    # 添加正文内容
    body = f"""
        <h2>摸鱼小助手提醒</h2>
    <hr>
    <p>今天是{ cout_holiday.wee }！加油吧！摸鱼人！</p>
    <p>工作再累，一定不要忘记摸鱼哦！有事没事起身去茶水间，去厕所，去廊道走走；别老在工位上坐着，钱是老板的，但命是自己的。</p>
    <p><b>今日问候：</b></p>
    <ul>
        <li>距离周末还有:{ cout_holiday.days_until_weekend }天</li>
        <li>距离元旦还有:{ cout_holiday.days_until_new_year }天</li>
        <li>距离春节还有:{ cout_holiday.days_until_chinese_new_year }天</li>
        <li>距离清明节还有:{ cout_holiday.days_until_qingming }天</li>
        <li>距离劳动节还有:{ cout_holiday.days_until_labour_day }天</li>
        <li>距离端午节还有:{ cout_holiday.days_until_dragon_boat_festival }天</li>
        <li>距离中秋节还有:{ cout_holiday.days_until_mid_autumn_festival }天</li>
        <li>距离国庆节还有:{ cout_holiday.days_until_national_day }天</li>
    </ul>
        <p>认认真真上班，这根本就不叫赚钱，那是用劳动换取报酬。只有偷懒，在上班的时候摸鱼划水，你才是从老板手里赚到了钱。</p>
        <p>最后，祝愿天下所有摸鱼人，都能愉快的渡过每一天！</p>
    <hr>
        <p>(这些事情，我会在每天准时提醒你哟~)</p>

    """
    msg.attach(MIMEText(body, 'html'))

    # 添加附件（可选）
    # with open("daily_report.pdf", "rb") as f:
    #     attach = MIMEApplication(f.read(), _subtype="pdf")
    #     attach.add_header('Content-Disposition', 'attachment', filename="日报.pdf")
    #     msg.attach(attach)

    # 2. 发送邮件
    # QQ邮箱示例（其他邮箱替换服务器地址）
    server = smtplib.SMTP_SSL("smtp.qq.com", 465)
    server.login(sender, password)
    server.sendmail(sender, receivers, msg.as_string())
    time_t = time.strftime("%Y-%m-%d %H:%M:%S")
    print(f"{time_t} 邮件发送成功！")


# 3. 定时任务设置（每天上午9:30发送）
# schedule.every().day.at("09:22").do(send_email)

# 直接执行
# send_email()

# # 4. 保持程序运行
# print("定时邮件服务已启动...")
# while True:
#     schedule.run_pending()
#     time.sleep(60)  # 每分钟检查一次
